package com.gts.sofa.servlet;

import com.gts.sofa.config.AppConfig;
import com.gts.sofa.config.RootConfig;
import org.springframework.lang.Nullable;
import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;

import javax.servlet.ServletContainerInitializer;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import java.util.Set;

public class MyServletInit extends AbstractAnnotationConfigDispatcherServletInitializer{

    /**
     *
     * 获取跟容器的配置类，以前是用Spring的配置文件中的<listener></listener> 标签来创建根容器的
     *
     * @return
     */
    @Nullable
    protected Class<?>[] getRootConfigClasses() {
        return new Class[]{RootConfig.class};
    }

    /**
     *
     *
     * 获取Web容器的配置类，以前是根据Springmvc的配置文件来的
     * @return
     */
    @Nullable
    protected Class<?>[] getServletConfigClasses() {
        return new Class[]{AppConfig.class};
    }

    /**
     *
     *
     * 获取servlet的映射信息的
     * @return
     */
    protected String[] getServletMappings() {
        //这里拦截所有的静态资源（xx.js,xx.png）,但是不包括*.jsp文件
        // /* 是拦截所有的，包括*.jsp文件
        return new String[]{"/"};
    }
}
